#ifndef __QUEUE_H__
#define __QUEUE_H__

typedef struct seqqueue{
	void *arr;
	int front;
	int tail;
	int capacity;
	int size;
}queue;

int queue_init(queue **myqueue, int capacity, int size);

int queue_is_empty(const queue *myqueue);

int queue_is_full(const queue *myqueue);

int enqueue(queue *myqueue, const void *data);

int dequeue(queue *myqueue, void *data);

void queue_destroy(queue **myqueue);



#endif
